/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.meanzoft.m3d.model.m3dmodel;

import java.util.LinkedList;

/**
 * http://en.wikipedia.org/wiki/Polygon_mesh
 * 
 * The mesh is for storing reference points to the used vertices, faces, edges,
 * polygons and surface in a 3d object
 * 
 * Usually a 3D model, consists of several 3d Objects, which are called meshes
 * 
 * @author Meanz
 */
public class Mesh {

    private LinkedList<Integer> vertices = new LinkedList<Integer>();
    private LinkedList<Face> faces = new LinkedList<Face>();
    private LinkedList<Edge> edges = new LinkedList<Edge>();
    public ModelData modelData;
    
    private String name;

    public Mesh() {
        this("default");
    }

    public Mesh(String name) {
        this.name = name;
        modelData = new ModelData();
    }
    
    public ModelData getModelData() {
        return modelData;
    }

    /**
     * Getters and setters
     */
    public LinkedList<Edge> getEdges() {
        return edges;
    }

    public void setEdges(LinkedList<Edge> edges) {
        this.edges = edges;
    }

    public LinkedList<Face> getFaces() {
        return faces;
    }

    public void setFaces(LinkedList<Face> faces) {
        this.faces = faces;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public LinkedList<Integer> getVertices() {
        return vertices;
    }

    public void setVertices(LinkedList<Integer> vertices) {
        this.vertices = vertices;
    }
}
